package com.info.zhiduoduo.core.service.payment.thirdpay;

import com.info.zhiduoduo.common.constants.SmartResult;
import com.info.zhiduoduo.repository.entity.order.TradeRecord;

/**
 * 第三方支付平台的支付方法
 *
 * @author bob
 * @time 2020/8/11 11:45 下午
 */
public interface ThirdPayService {

	/**
	 * 调用第三方平台的支付接口
	 *
	 * @param tradeRecord
	 * @return
	 */
	SmartResult doCallPayApi(TradeRecord tradeRecord);

	/**
	 * 处理交易结果
	 *
	 * @param trade
	 * @param orderState
	 * @param errorcode
	 * @param errormsg
	 */
	SmartResult handlePayUserTradeState(TradeRecord trade, String orderState, String errorcode, String errormsg);

	/**
	 * 处理九歌交易结果
	 *
	 * @param trade
	 * @param orderState
	 * @param errorcode
	 * @param errormsg
	 */
	SmartResult handlePayJiugeTradeState(TradeRecord trade, String orderState, String errorcode, String errormsg);
}
